package com.lihao.wanandroid.app.event

import android.app.Application
import com.lihao.jetpackcore.base.BaseViewModel
import com.lihao.wanandroid.app.util.CacheUtils
import com.lihao.wanandroid.data.model.UserInfoResponse
import me.hgj.jetpackmvvm.callback.livedata.UnPeekLiveData
import me.hgj.jetpackmvvm.callback.livedata.UnPeekNotNullLiveData

/**
 * 作者　: hegaojian
 * 时间　: 2019/12/23
 * 描述　:APP全局的Viewmodel，可以存放公共数据，当他数据改变时，所有监听他的地方都会收到回调,也可以做发送消息
 * 比如 全局可使用的 地理位置信息，账户信息,App的基本配置等等，
 */
class AppViewModel(app: Application) : BaseViewModel(app) {

    //是否第一次打开
    val isFirst = UnPeekNotNullLiveData<Boolean>()

    // 是否登陆
    val isLogin = UnPeekNotNullLiveData<Boolean>()

    val userInfo = UnPeekLiveData<UserInfoResponse>()

    init {
        isFirst.value = CacheUtils.isFirst()
        isLogin.value = CacheUtils.isLogin()
        userInfo.value = CacheUtils.getUserInfo()
    }
}